home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / C-Communications / (c)c12b.d64 / script files < prev    next >
Text File  |  2007-02-04  |  10KB  |  334 lines

  1. 3.3  sCRIPT FILES
  2.  
  3. 3.3.1  dESCRIPTION.
  4.  
  5. sCRIPT FILES ARE USER-CREATED PROGRAMS CONTAINING COMMANDS WHICH
  6. INSTRUCT THE TERMINAL TO PERFORM CERTAIN FUNCTIONS AUTOMATICALLY. yOU
  7. FIRST CREATE A "PROGRAM" USING THE SCRIPT LANGUAGE, AND THEN YOU
  8. COMPILE THE PROGRAM INTO COMMAND CODES WHICH THE TERMINAL INTERPRETS
  9. AND EXECUTES.  aN EXAMPLE OF A SCRIPT IS A PROGRAM THAT CALLS UP A
  10. bbs, LOGS IN WITH YOUR NAME AND PASSWORD, READS NEW MESSAGES AND
  11. CAPTURES THEM IN THE BUFFER, LOGS OFF, AND SAVES THE MESSAGES TO DISK.
  12.  
  13. tO CREATE A SCRIPT, USE THE sEQ EDITOR TO WRITE A FILE WITH THE SCRIPT
  14. COMMANDS, AND THEN RUN THE sCRIPT COMPILER TO CONVERT THE SEQUENTIAL
  15. FILE INTO AN EXECUTABLE SCRIPT FILE.  tHE SCRIPT SOURCE CODE MAY BE
  16. SAVED EITHER IN A SEQUENTIAL FILE OR AS LINES IN A PROGRAM WITH LINE
  17. NUMBERS.  eACH COMMAND SHOULD BE ENTERED ON A SEPARATE LINE; NO COLONS
  18. OR OTHER CHARACTERS ARE USED TO SEPARATE COMMANDS ON THE SAME LINE.
  19. yOU MAY INCLUDE COMMENTS IN THE SCRIPT PROGRAM BY PLACING THE COMMENT
  20. TEXT AFTER A SEMICOLON (";") ON A LINE. tHE COMPILER IGNORES ANYTHING
  21. ON A LINE THAT COMES AFTER A SEMICOLON.
  22.  
  23. 3.3.2  sCRIPT COMMANDS.
  24.  
  25. cOMMANDS ARE GIVEN IN UPPERCASE.  hOWEVER, THE ACTUAL SCRIPT PROGRAMS
  26. SHOULD HAVE LOWERCASE COMMANDS!
  27.  
  28. aNY ARGUMENTS THAT GO ALONG WITH THE COMMANDS ARE PLACED NEXT TO THEM.
  29. nUMERIC ARGUMENTS ARE IN BRACKETS [ ], AND STRING ARGUMENTS ARE IN
  30. QUOTES " ".  oPTIONAL ARGUMENTS ARE GIVEN INSIDE GREATER-THAN AND
  31. LESS-THAN SYMBOLS.  tHE DESCRIPTION OF THE ARGUMENT IS IN LOWERCASE.
  32.  
  33. fOR COMMANDS THAT LOAD MODULE FILES, OMIT THE PREFIX FROM THE FILE
  34. NAME.  (fOR EXAMPLE, prot"xmodem" WOULD WORK, BUT prot"prt.xmodem"
  35. WOULD NOT.)
  36.  
  37.  
  38. asc "ASCII TABLE"
  39.  
  40.    lOADS THE ascii TRANSLATION TABLE WITH THE GIVEN FILE NAME.
  41.  
  42. baud [BAUD RATE]
  43.  
  44.    cHANGES THE BAUD RATE TO THE SPECIFIED NUMBER.  iF THE BAUD RATE
  45.    GIVEN IS GREATER THAN THE MAXIMUM BAUD RATE FOR THE MODEM, NO
  46.    CHANGE IS MADE.
  47.  
  48. buffer COMMAND <"FILENAME">
  49.  
  50.    tHE FOLLOWING COMMANDS ARE AVAILABLE WITH buffer:
  51.  
  52.    clear - cLEARS ALL FILES FROM THE BUFFER.
  53.  
  54.    close - cLOSES A CAPTURE FILE.
  55.  
  56.    kill "FILENAME" - dELETES A FILE FROM THE BUFFER.
  57.  
  58.    load "FILENAME" - lOADS A FILE FROM DISK INTO THE BUFFER.
  59.  
  60.    open "FILENAME" - oPENS A CAPTURE FILE.
  61.  
  62.    print "FILENAME" - sENDS A BUFFER FILE TO THE PRINTER.
  63.  
  64.    save "FILENAME" - sAVES A FILE FROM THE BUFFER TO DISK.
  65.  
  66.    send "FILENAME" - sENDS A FILE FROM THE BUFFER TO THE MODEM.
  67.  
  68. check [STRING NUMBER] "STRING"
  69.  
  70.    wORKS IN CONJUNCTION WITH THE wait COMMAND TO DETECT INCOMING
  71.    STRINGS.  fOR EXAMPLE,
  72.  
  73.    check 2 "pASSWORD"
  74.  
  75.    DEFINES STRING NUMBER 2 AS "pASSWORD".  uP TO 6 STRINGS MAY BE
  76.    DEFINED.  wHEN THE SCRIPT ENCOUNTERS A wait COMMAND, IT GOES TO
  77.    TERMINAL MODE AND WAIT UNTIL ONE OF THESE DEFINED STRINGS IS
  78.    RECEIVED, AND THEN IT RETURNS THE RECEIVED STRING NUMBER.  tHE
  79.    check COMMAND DOES NOT WAIT.
  80.  
  81. dial "ENTRY NAME"
  82.  
  83.    dIALS THE ENTRY WITH THE GIVEN NAME.  tHE AUTODIALER KEEPS
  84.    REDIALING UNTIL EITHER A CARRIER IS FOUND OR THE REDIAL COUNT IS
  85.    EXHAUSTED (SEE redial).
  86.  
  87. dial# "PHONE NUMBER"
  88.  
  89.    dIALS THE PHONE NUMBER SPECIFIED.
  90.  
  91. dialn [LOCATION IN PHONE LIST]
  92.  
  93.    dIALS THE ENTRY IN THE PHONE LIST CORRESPONDING TO THE SPECIFIED
  94.    NUMBER.  tHE NUMBERS DON'T SHOW UP ON THE AUTODIAL MENU, BUT, FOR
  95.    EXAMPLE, dialn 3 WOULD DIAL THE THIRD ENTRY FROM THE TOP.
  96.  
  97. disk [DEVICE NUMBER]
  98.  
  99.    cHANGES THE DISK DEVICE DEFAULT TO THE SPECIFIED DEVICE NUMBER. iF
  100.    THE DEVICE IS NOT PRESENT, THE SCRIPT HALTS WITH AN ERROR.
  101.  
  102. diskc "DISK COMMAND"
  103.  
  104.    sENDS THE SPECIFIED DISK COMMAND TO THE CURRENT DISK DEVICE.  tHE
  105.    EXTRA DISK COMMANDS ADDED BY nOVATERM ARE ALSO VALID.
  106.  
  107. download "FILENAME,TYPE"
  108.  
  109.    dOWNLOADS THE SPECIFIED FILE USING THE PROTOCOL IN MEMORY.  tHE
  110.    ONE-LETTER TYPE SPECIFICATION IS OPTIONAL.  iF USED, IT MUST BE
  111.    EITHER A "P", "S", OR "U" FOR PRG, SEQ, OR USR FILE TYPES,
  112.    RESPECTIVELY.  fOR BATCH PROTOCOLS, THE FILE NAME SPECIFIED HERE IS
  113.    IGNORED.
  114.  
  115. drive [DRIVE NUMBER]
  116.  
  117.    cHANGES THE DEFAULT DRIVE NUMBER (NOT DEVICE NUMBER).
  118.  
  119. end
  120.  
  121.    tERMINATES THE SCRIPT PROGRAM.
  122.  
  123. font "FONT FILE"
  124.  
  125.    lOADS A FONT FROM DISK.
  126.  
  127. font80 "FONT FILE"
  128.  
  129.    lOADS AN 80 COLUMN FONT FROM DISK.
  130.  
  131. gettime
  132.  
  133.    rEQUESTS THE USER TO INPUT THE CURRENT TIME.  iF YOUR SCRIPT
  134.    PROGRAM USES THE until COMMAND TO WAIT FOR A CERTAIN TIME OF DAY,
  135.    YOU SHOULD INCLUDE THIS COMMAND AT THE START OF YOUR PROGRAM SO
  136.    THAT YOU MAY SET THE CLOCK.
  137.  
  138. go40
  139.  
  140.    cHANGES TO 40 COLUMN MODE, IF THE TERMINAL EMULATOR ALLOWS IT.
  141.  
  142. go80
  143.  
  144.    cHANGES TO 80 COLUMN MODE.
  145.  
  146. hangup
  147.  
  148.    hANGS UP THE PHONE.
  149.  
  150. if <no> CONDITION then COMMAND
  151.  
  152.    uSED TO TEST VARIOUS CONDITIONS.  aNY ONE OF THE CONDITIONS BELOW
  153.    MAY BE SUBSTITUTED INTO THE COMMAND, AND IF THE CONDITION IS TRUE,
  154.    THE COMMAND AFTER then IS EXECUTED.  aNY COMMAND MAY BE PUT AFTER
  155.    then.
  156.  
  157.    carrier - cHECKS FOR A CARRIER.  iF no IS IN FRONT OF IT, THE
  158.    COMMAND EXECUTES IN THE ABSENCE OF A CARRIER.
  159.  
  160.    check [CHECK STRING] - cHECKS TO SEE IF THE SPECIFIED STRING NUMBER
  161.    WAS RECEIVED.  tHERE MUST BE A NUMBER AFTER check, OR THE COMMAND
  162.    IS INVALID.
  163.  
  164.    receive - cHECKS TO SEE IF DATA IS BEING RECEIVED.  iF no PRECEDES
  165.    IT, THE COMMAND EXECUTES WHEN DATA IS NOT BEING RECEIVED.
  166.  
  167.    ring - cHECKS TO SEE IF THE PHONE IS RINGING.  iF no PRECEDES IT,
  168.    THE COMMAND EXECUTES WHEN THE PHONE ISN'T RINGING.
  169.  
  170. jump LABEL
  171.  
  172.    jUMPS TO THE SPECIFIED LABEL IN THE PROGRAM.  lABELS ARE
  173.    NON-COMMAND WORDS WHICH ARE PLACED BEFORE COMMANDS TO IDENTIFY A
  174.    LOCATION IN THE PROGRAM.  fOR EXAMPLE:
  175.  
  176.     LOOP check 1 "uSERNAME:"
  177.     .
  178.     .
  179.     jump LOOP
  180.  
  181.    lABELS MAY CONTAIN ANY CHARACTERS OTHER THAN QUOTES, BUT A LABEL
  182.    MAY ONLY BE ONE WORD.
  183.  
  184.    iF THE SCRIPT IS ENTERED IN THE FORM OF A PROGRAM FILE (RATHER THAN
  185.    A SEQUENTIAL FILE), AN ACTUAL LINE NUMBER MAY BE USED WITH THE jump
  186.    COMMAND.  fOR EXAMPLE:
  187.  
  188.     10 check 1 "uSERNAME:"
  189.     20 ...
  190.     30 ...
  191.     40 jump 10
  192.  
  193.    ...OR:
  194.  
  195.     100 if no carrier then jump 100
  196.  
  197. link "SCRIPT PROGRAM"
  198.  
  199.    lOADS AND EXECUTES A NEW SCRIPT PROGRAM.
  200.  
  201. macro [FUNCTION KEY NUMBER]
  202.  
  203.    sENDS A FUNCTION KEY STRING.  tHIS IS EQUIVALENT TO PRESSING ONE OF
  204.    THE 16 FUNCTION KEYS.
  205.  
  206. minit
  207.  
  208.    iNITIALIZES THE MODEM IF NO CARRIER IS PRESENT.
  209.  
  210. modem "MODEM DRIVER"
  211.  
  212.    lOADS A MODEM DRIVER.
  213.  
  214. offhook
  215.  
  216.    tAKES THE PHONE OFF THE HOOK.
  217.  
  218. .opt PARAMETER
  219.  
  220.    cHANGES A COMPILER OPTION.  tHESE COMMANDS ARE NOT INCLUDED IN THE
  221.    PROGRAM WHEN IT IS COMPILED.  iNSTEAD, THEY DIRECT THE COMPILER TO
  222.    TAKE CERTAIN ACTIONS OR SET FLAGS.  tHE ONLY PARAMETERS CURRENTLY
  223.    SUPPORTED ARE:
  224.  
  225.    .OPT ANSI   : cONVERTS UPPERCASE CHARACTERS IN ALL FOLLOWING check
  226.                  STRINGS TO UPPERCASE CHARACTERS WITH LOWER ascii
  227.                  VALUES.  tHIS COMMAND IS NECESSARY IF THE SCRIPT
  228.                  IS GOING TO RUN IN ansi, vt52, OR vt102 MODE.
  229.    .OPT NOANSI : nO CONVERSION OF UPPERCASE CHARACTERS.  tHIS IS THE
  230.                  DEFAULT.
  231.  
  232. output "STRING"
  233.  
  234.    oUTPUTS A STRING TO THE MODEM.  cONTROL CHARACTERS ARE ENTERED AS
  235.    THEY ARE IN MACRO KEYS, WITH A ^ PRECEDING THE CORRESPONDING
  236.    LETTER.  fOR EXAMPLE, A CARRIAGE RETURN (CONTROL-m) WOULD BE
  237.    ENTERED AS ^m.
  238.  
  239. pause [NUMBER OF SECONDS]
  240.  
  241.    pAUSES THE PROGRAM FOR A SPECIFIED NUMBER OF SECONDS.
  242.  
  243. print "FILENAME"
  244.  
  245.    sENDS A FILE FROM DISK TO THE PRINTER.  iF THE PRINTER IS NOT
  246.    TURNED ON, THE SCRIPT ABORTS.
  247.  
  248. printer [DEVICE NUMBER]
  249.  
  250.    cHANGES THE PRINTER DEVICE DEFAULT TO THE SPECIFIED DEVICE NUMBER.
  251.    iF THE DEVICE IS NOT PRESENT, THE SCRIPT ABORTS WITH AN ERROR.
  252.  
  253. prot "PROTOCOL"
  254.  
  255.    lOADS A PROTOCOL.
  256.  
  257. redial [NUMBER OF TRIES]
  258.  
  259.    sETS THE NUMBER OF TIMES TO REDIAL A NUMBER BEFORE QUITTING.  iF A
  260.    NUMBER IS DIALED THIS MANY TIMES WITHOUT FINDING A CARRIER, THE
  261.    SCRIPT ABORTS.
  262.  
  263. screen "STRING"
  264.  
  265.    pRINTS A TEXT MESSAGE ON THE SCREEN.
  266.  
  267. secaddr [SECONDARY ADDRESS]
  268.  
  269.    cHANGES THE PRINTER SECONDARY ADDRESS.
  270.  
  271. send "FILENAME"
  272.  
  273.    sENDS A FILE TO THE MODEM.
  274.  
  275. term "TERMINAL EMULATOR"
  276.  
  277.    lOADS A TERMINAL EMULATOR.
  278.  
  279. uncheck [STRING NUMBER]
  280.  
  281.    cLEARS THE STRING IN THE SPECIFIED STRING NUMBER.  fOR EXAMPLE, IF
  282.    check 2 "pASSWORD" WAS PREVIOUSLY EXECUTED, uncheck 2 GETS RID OF
  283.    THAT DEFINITION FOR STRING NUMBER 2.
  284.  
  285. until "24-HOUR TIME"
  286.  
  287.    pAUSES EXECUTION OF THE SCRIPT.  tHE SCRIPT RESUMES WHEN THE TIME
  288.    OF DAY REACHES THE SPECIFIED TIME.  tHE TIME MUST BE IN 24-HOUR
  289.    FORM, AS SHOWN:
  290.  
  291.    until "hh:mm:ss"
  292.  
  293.    fOR EXAMPLE:
  294.  
  295.    until "22:35"  WAITS UNTIL 10:35 pm
  296.    until "11:50:25"  WAITS UNTIL 25 SECONDS PAST 11:50 am
  297.  
  298. upload "FILENAME"
  299.  
  300.    uPLOADS A FILE USING THE PROTOCOL IN MEMORY.
  301.  
  302. wait
  303.  
  304.    gOES INTO TERMINAL MODE AND RECEIVES DATA (AND PRINTS IT TO THE
  305.    SCREEN) WHILE WAITING FOR THE STRINGS SPECIFIED WITH THE check
  306.    COMMAND.  wHEN ONE OF THE STRINGS IS FOUND, IT STOPS WAITING AND
  307.    CONTINUES WITH THE SCRIPT.
  308.  
  309.    note:  iF A RECEIVED STRING PATTERN MATCHES MORE THAN ONE STRING
  310.    SPECIFIED BY check COMMANDS, THE LOWEST NUMBER IS RETURNED. fOR
  311.    EXAMPLE, IF STRING 1 IS ">" AND STRING 2 IS "lOBBY>", AND THE
  312.    STRING "lOBBY>" IS RECEIVED, THE SCRIPT RECOGNIZES STRING 1 BECAUSE
  313.    IT IS A LOWER STRING NUMBER, EVEN THOUGH BOTH STRINGS MATCH THE
  314.    RECEIVED DATA.
  315.  
  316.  
  317. 3.3.3  aN EXAMPLE.
  318.  
  319. bELOW IS A SCRIPT PROGRAM FOR LOGGING INTO A cOLOR 64 bbs.
  320.  
  321. REDIAL 5            ; ABORT SCRIPT AFTER 5 UNSUCCESSFUL TRIES
  322. DIAL"nAME OF bbs"   ; AUTODIAL THE bbs
  323. CHECK 1 "RETURN"    ; SPECIFY TO CHECK FOR THE STRING "RETURN"
  324. WAIT                ; WAIT FOR STRING IN TERMINAL MODE
  325. OUTPUT"^m"          ; SEND A CARRIAGE RETURN
  326. CHECK 1 "(Y/N)"     ; CHECK FOR ascii/GRAPHICS PROMPT
  327. WAIT
  328. OUTPUT"Y"           ; SEND A YES
  329. CHECK 1 ">"         ; WAIT FOR USER NUMBER PROMPT
  330. MACRO 1             ; SEND PASSWORD MACRO - SHOULD CONTAIN USER
  331. END                 ;   NUMBER, ONE SECOND PAUSE, AND PASSWORD
  332.  
  333.  
  334.